﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace HerGoS.Viaticos.Entities
{
    [Serializable]
    public  class Liquidacion : ViaticosBaseClass, ITramos
    {

        #region Construction
        public Liquidacion()
        {
            Initializer();
        }
        private void Initializer()
        {
            this.Tramos = new List<Tramo>();
            this.LGastos = new List<Gastos>();
        }

        #endregion

        #region DataMembers
       
        public  int NumeroLiquidacion { get; set;}
        public DateTime? FechaLiquidacion { get; set; }
        public bool ViaticosFindeSemana {get; set;}
        public bool Anticipo { get; set; }
        public decimal PorcentajeViatico { get; set; }
        public decimal TotalViaticos { get; set; }
        public  decimal TotalTerminales { get; set; }
        public decimal TotalGastos { get; set; }
        public decimal AnticiposLiquidados { get; set; }
        public decimal TotalAPagar { get; set; }
        public string NumeroAP { get; set; }
        public DateTime? FECHAAP { get; set; }
        public DateTime? FechaPago { get; set; }
        public decimal MontoPagado { get; set; }
        public string POA {get; set;}

        private Rendicion _RendicionLiquidada;
        private Solicitud _SolicitudLiquidada;
        private List<Tramo> _Tramos;
        private List<Gastos> _LGastos;
       

        



      
        #endregion


        public Rendicion RendicionLiquidada
        {
            get { return _RendicionLiquidada; }
            set { _RendicionLiquidada = value; }
        }
        public Solicitud SolicitudLiquidada
        {
            get { return _SolicitudLiquidada; }
            set { _SolicitudLiquidada = value; }
        }

        public List<Gastos> LGastos
        {
            get { return _LGastos; }
            set { _LGastos = value; }
        }

        public Distancia Distancia
        {
            get { return _Distancia; }
            set { _Distancia = value; }
        }

        public decimal CantidadViaticos { get; set; }

        public decimal TotalKmRecorridos { get; set; }

        public int CantidadTerminales { get; set; }

        public int CantidadKms { get; set; }

        public string NumeroCheque { get; set; }

        #region ITramos Members


        public List<Tramo> Tramos
        {
            get
            {
              return  _Tramos; 
            }
            set
            {
                _Tramos = value;
            }
        }

        #endregion
    }
}
